(function(){
  window.peach = {
    "debug": false
  };
  // window.xyJSBridge = {};
  window.xyJSBridgeIn = {};

  // 函数赋值
  /** 参数说明
    * callbackFn: Function 回调函数
    * oriName:    String   客户端回调函数名
    * useName:    String   回调函数名
    **/
  function setFn (callbackFn, oriName, useName) {
    if (callbackFn && typeof(callbackFn[useName]) == 'function') {
      window.xyJSBridgeIn[oriName] = callbackFn[useName];
    } else {
      window.xyJSBridgeIn[oriName] = function(){};
    }
  }

  // 登录
  peach['login'] = function (param) {
    setFn(param, 'loginSuccess', 'success');
    setFn(param, 'loginCancel', 'cancel');
    window.xyJSBridge.login();
  }

  //分享
  /** 参数说明
    * shareobj = {
    *   title:    String,    分享标题
    *   desc:     String,    分享描述
    *   link:     String,    分享地址
    *   platName: String, 分享目标应用
    * }
    * platobj: {           需要检测的分享平台名 'facebook','twitter','wechat','microblog'
    *   arrPlat: Array
    * }       
    **/
  peach['share'] = function(param){
    setFn(param, 'shareSuccess', 'success');
    setFn(param, 'shareChannel', 'channel');
    setFn(param, 'checkResult', 'result');
  };
  //分享
  peach['share'].prototype.share = function(shareobj){
    var data = JSON.stringify(shareobj);
    window.xyJSBridge.share(data);
  };
  //检验
  peach['share'].prototype.check = function(platobj){
    platobj = JSON.stringify(platobj);
    if(peach.debug) return false;
    window.xyJSBridge.check(platobj);
  };

  //图片浏览
  /** 参数说明
    * current: String  当前图片地址
    * urls:    Array   数组
    **/
  peach['image'] = function(param) {
    param = JSON.stringify(param);
    // console.log(param);
    window.xyJSBridge.previewImage(param);
  }

  //播放视频
  /**
    * url: String 视频播放地址
    * x:   Number 距离文档左边距
    * y:   Number 距离文档上边距
    * w:   Number 播放窗口宽度
    * h:   Number 播放窗口高度
    **/
  peach['video'] = function(param) {
    param = JSON.stringify(param);
    // console.log(param);
    window.xyJSBridge.playVideo(param);
  }

  //vr播放
  /**
    * url: String vr视频播放地址
    * x:   Number 距离文档左边距
    * y:   Number 距离文档上边距
    * w:   Number 播放窗口宽度
    * h:   Number 播放窗口高度
    **/
  peach['vr'] = function(param) {
    param = JSON.stringify(param);
    window.xyJSBridge.playVr(param)
  }

  //读新闻
  peach['readnews'] = function(param) {
    setFn(param, 'readNewsEnd', 'end');
    setFn(param, 'readNewsPaused', 'paused');
    if(peach.debug) return false;
    this.content = param.content;
    // window.xyJSBridge.readNews(params.content);
  }

  //播放
  peach['readnews'].prototype.play = function(){
    if(peach.debug) return false;
    if(this.content.length > 0){
      window.xyJSBridge.readNews(this.content);
      this.content = '';
    }
    window.xyJSBridge.readNewsPlay();
  }
  //暂停
  peach['readnews'].prototype.paused = function(){
    if(peach.debug) return false;
    window.xyJSBridge.readNewsPaused();
  }
  //停止
  peach['readnews'].prototype.stop = function(){
    if(peach.debug) return false;
    window.xyJSBridge.readNewsStop();
  }

  //打开webView
  peach['url'] = function(param) {
    var data = {
      title: "",
      url: "",
      type: ""
    };
    $.extend(data, param);
    data = JSON.stringify(data);
    window.xyJSBridge.openUrl(data);
  }

  //打开新闻详情页
  peach['news'] = function(param) {
    param = JSON.stringify(param);
    window.xyJSBridge.openNews(param);
  }
  //弹出框

  //选取相册照片
  
  // 修改字号
  peach['font'] = function(param){
    setFn(param, 'fontSize', 'size');
  }

  // 评论
  peach['comment'] = function(param) {
    setFn(param, 'commentSuccess', 'success');
    setFn(param, 'commentFail', 'fail');
  }
  /**
    * dataobj = {
    *  id:          String,   评论id
    *  replyUserId: String,   被回复者的id
    *  replyName:   String    被回复者的昵称
    * }
    **/
  peach['comment'].prototype.reply = function(dataobj){
    var data = JSON.stringify(dataobj);
    window.xyJSBridge.reply(data);
  }

  //打开评论列表页
  peach['comment'].prototype.list = function(id){
    window.xyJSBridge.openComment(id);
  }
    


  //webView 方法

  //共享数据
  peach['sharedata'] = function(dataobj){
    if(typeof(window.xyJSBridgeIn.shareData) == "undefined"){
      window.xyJSBridgeIn.shareData = {};
    };
    for(key in dataobj){
      window.xyJSBridgeIn.shareData[key] = dataobj[key];
    };
    window.xyJSBridgeIn.getShareData = function(){
      var sharedata = JSON.stringify(window.xyJSBridgeIn.shareData);
      window.xyJSBridge.getShareData(sharedata);
    }
  }
})();





// // 登录
// peach.login({
//   success: function (res) {

//   },
//   cancel: function(){

//   }
// });

// //字号修改
// peach.font({
//   size: function(size){
//     $("body").css("fontSize": size + "px");
//   }
// })


// //视频播放
// peach.video({
//   //播放
//   play: function (){

//   },
//   // 暂停
//   pause: function(){

//   },
//   // 停止
//   end: function(){

//   }
// })

// // 评论
// peach.comment({
//   //评论成功
//   success: function(){

//   },
//   fail: function(){

//   }
// })

// var newReadNews = new peach.readnews({
//   content: "试读内容",
//   //停止回调
//   end: function(){
//     console.log("停止改变样式")
//   }
// })

